home *** CD-ROM | disk | FTP | other *** search
/ ETO Development Tools 1 / ETO Development Tools 1.iso / Essentials / Developer Essentials Jul 90 / Programming / MPW Interfaces & Libraries 3.1 / PInterfaces / SysEqu.p < prev    next >
Encoding:
Text File  |  1989-10-13  |  16.1 KB  |  329 lines  |  [TEXT/MPS ]

  1. {
  2. Created: Thursday, April 6, 1989 at 7:38 PM
  3.     SysEqu.p
  4.     Pascal Interface to the Macintosh Libraries
  5.  
  6.     Copyright Apple Computer, Inc.    1988
  7.     All rights reserved
  8. }
  9.  
  10.  
  11. {$IFC UNDEFINED UsingIncludes}
  12. {$SETC UsingIncludes := 0}
  13. {$ENDC}
  14.  
  15. {$IFC NOT UsingIncludes}
  16.     UNIT SysEqu;
  17.     INTERFACE
  18. {$ENDC}
  19.  
  20. {$IFC UNDEFINED UsingSysEqu}
  21. {$SETC UsingSysEqu := 1}
  22.  
  23.  
  24. CONST
  25. PCDeskPat = $20B;        { desktop pat, top bit only! others are in use}
  26. HiKeyLast = $216;        { Same as KbdVars}
  27. KbdLast = $218;         { Same as KbdVars+2}
  28. ExpandMem = $2B6;        { pointer to expanded memory block}
  29. SCSIBase = $0C00;        { (long) base address for SCSI chip read}
  30. SCSIDMA = $0C04;        { (long) base address for SCSI DMA}
  31. SCSIHsk = $0C08;        { (long) base address for SCSI handshake}
  32. SCSIGlobals = $0C0C;    { (long) ptr for SCSI mgr locals}
  33. RGBBlack = $0C10;        { (6 bytes) the black field for color}
  34. RGBWhite = $0C16;        { (6 bytes) the white field for color}
  35. RowBits = $0C20;        { (word) screen horizontal pixels}
  36. ColLines = $0C22;        { (word) screen vertical pixels}
  37. ScreenBytes = $0C24;    { (long) total screen bytes}
  38. NMIFlag = $0C2C;        { (byte) flag for NMI debounce}
  39. VidType = $0C2D;        { (byte) video board type ID}
  40. VidMode = $0C2E;        { (byte) video mode (4=4bit color)}
  41. SCSIPoll = $0C2F;        { (byte) poll for device zero only once.}
  42. SEVarBase = $0C30;
  43. MMUFlags = $0CB0;        { (byte) cleared to zero (reserved for future use)}
  44. MMUType = $0CB1;        { (byte) kind of MMU present}
  45. MMU32bit = $0CB2;        { (byte) boolean reflecting current machine MMU mode}
  46. MMUFluff = $0CB3;        { (byte) fluff byte forced by reducing MMUMode to MMU32bit.}
  47. MMUTbl = $0CB4;         { (long) pointer to MMU Mapping table}
  48. MMUTblSize = $0CB8;     { (long) size of the MMU mapping table}
  49. SInfoPtr = $0CBC;        { (long) pointer to Slot manager information}
  50. ASCBase = $0CC0;        { (long) pointer to Sound Chip}
  51. SMGlobals = $0CC4;        { (long) pointer to Sound Manager Globals}
  52. TheGDevice = $0CC8;     { (long) the current graphics device}
  53. CQDGlobals = $0CCC;     { (long) quickDraw global extensions}
  54. ADBBase = $0CF8;        { (long) pointer to Front Desk Buss Variables}
  55. WarmStart = $0CFC;        { (long) flag to indicate it is a warm start}
  56. TimeDBRA = $0D00;        { (word) number of iterations of DBRA per millisecond}
  57. TimeSCCDB = $0D02;        { (word) number of iter's of SCC access & DBRA.}
  58. SlotQDT = $0D04;        { ptr to slot queue table}
  59. SlotPrTbl = $0D08;        { ptr to slot priority table}
  60. SlotVBLQ = $0D0C;        { ptr to slot VBL queue table}
  61. ScrnVBLPtr = $0D10;     { save for ptr to main screen VBL queue}
  62. SlotTICKS = $0D14;        { ptr to slot tickcount table}
  63. TableSeed = $0D20;        { (long) seed value for color table ID's}
  64. SRsrcTblPtr = $0D24;    { (long) pointer to slot resource table.}
  65. JVBLTask = $0D28;        { vector to slot VBL task interrupt handler}
  66. WMgrCPort = $0D2C;        { window manager color port }
  67. VertRRate = $0D30;        { (word) Vertical refresh rate for start manager. }
  68. ChunkyDepth = $0D60;    { depth of the pixels}
  69. CrsrPtr = $0D62;        { pointer to cursor save area}
  70. PortList = $0D66;        { list of grafports}
  71. MickeyBytes = $0D6A;    { long pointer to cursor stuff}
  72. QDErrLM = $0D6E;        {QDErr has name conflict w/ type. QuickDraw error code [word]}
  73. VIA2DT = $0D70;         { 32 bytes for VIA2 dispatch table for NuMac}
  74. SInitFlags = $0D90;     { StartInit.a flags [word]}
  75. DTQueue = $0D92;        { (10 bytes) deferred task queue header}
  76. DTQFlags = $0D92;        { flag word for DTQueue}
  77. DTskQHdr = $0D94;        { ptr to head of queue}
  78. DTskQTail = $0D98;        { ptr to tail of queue}
  79. JDTInstall = $0D9C;     { (long) ptr to deferred task install routine}
  80. HiliteRGB = $0DA0;        { 6 bytes: rgb of hilite color}
  81. TimeSCSIDB = $0DA6;     { (word) number of iter's of SCSI access & DBRA}
  82. DSCtrAdj = $0DA8;        { (long) Center adjust for DS rect.}
  83. IconTLAddr = $0DAC;     { (long) pointer to where start icons are to be put.}
  84. VideoInfoOK = $0DB0;    { (long) Signals to CritErr that the Video card is ok}
  85. EndSRTPtr = $0DB4;        { (long) Pointer to the end of the Slot Resource Table (Not the SRT buffer).}
  86. SDMJmpTblPtr = $0DB8;    { (long) Pointer to the SDM jump table}
  87. JSwapMMU = $0DBC;        { (long) jump vector to SwapMMU routine}
  88. SdmBusErr = $0DC0;        { (long) Pointer to the SDM busErr handler}
  89. LastTxGDevice = $0DC4;    { (long) copy of TheGDevice set up for fast text measure}
  90. NewCrsrJTbl = $88C;     { location of new crsr jump vectors}
  91. JAllocCrsr = $88C;        { (long) vector to routine that allocates cursor}
  92. JSetCCrsr = $890;        { (long) vector to routine that sets color cursor}
  93. JOpcodeProc = $894;     { (long) vector to process new picture opcodes}
  94. CrsrBase = $898;        { (long) scrnBase for cursor}
  95. CrsrDevice = $89C;        { (long) current cursor device}
  96. SrcDevice = $8A0;        { (LONG) Src device for Stretchbits}
  97. MainDevice = $8A4;        { (long) the main screen device}
  98. DeviceList = $8A8;        { (long) list of display devices}
  99. CrsrRow = $8AC;         { (word) rowbytes for current cursor screen}
  100. QDColors = $8B0;        { (long) handle to default colors}
  101. HiliteMode = $938;        { used for color highlighting}
  102. BusErrVct = $08;        { bus error vector}
  103. RestProc = $A8C;        { Resume procedure f InitDialogs [pointer]}
  104. ROM85 = $28E;            { (word) actually high bit - 0 for ROM vers $75 (sic) and later}
  105. ROMMapHndl = $B06;        { (long) handle of ROM resource map}
  106. ScrVRes = $102;         { screen vertical dots/inch [word]}
  107. ScrHRes = $104;         { screen horizontal dots/inch [word]}
  108. ScrnBase = $824;        { Screen Base [pointer]}
  109. ScreenRow = $106;        { rowBytes of screen [word]}
  110. MBTicks = $16E;         { tick count @ last mouse button [long]}
  111. JKybdTask = $21A;        { keyboard VBL task hook [pointer]}
  112. KeyLast = $184;         { ASCII for last valid keycode [word]}
  113. KeyTime = $186;         { tickcount when KEYLAST was rec'd [long]}
  114. KeyRepTime = $18A;        { tickcount when key was last repeated [long]}
  115. SPConfig = $1FB;        { config bits: 4-7 A, 0-3 B (see use type below)}
  116. SPPortA = $1FC;         { SCC port A configuration [word]}
  117. SPPortB = $1FE;         { SCC port B configuration [word]}
  118. SCCRd = $1D8;            { SCC base read address [pointer]}
  119. SCCWr = $1DC;            { SCC base write address [pointer]}
  120. DoubleTime = $2F0;        { double click ticks [long]}
  121. CaretTime = $2F4;        { caret blink ticks [long]}
  122. KeyThresh = $18E;        { threshold for key repeat [word]}
  123. KeyRepThresh = $190;    { key repeat speed [word]}
  124. SdVolume = $260;        { Global volume(sound) control [byte]}
  125. Ticks = $16A;            { Tick count, time since boot [unsigned long]}
  126. TimeLM = $20C;            {Time has name conflict w/ type. Clock time (extrapolated) [long]}
  127. MonkeyLives = $100;     { monkey lives if >= 0 [word]}
  128. SEvtEnb = $15C;         { enable SysEvent calls from GNE [byte]}
  129. JournalFlag = $8DE;     { journaling state [word]}
  130. JournalRef = $8E8;        { Journalling driver's refnum [word]}
  131. BufPtr = $10C;            { top of application memory [pointer]}
  132. StkLowPt = $110;        { Lowest stack as measured in VBL task [pointer]}
  133. TheZone = $118;         { current heap zone [pointer]}
  134. ApplLimit = $130;        { application limit [pointer]}
  135. SysZone = $2A6;         { system heap zone [pointer]}
  136. ApplZone = $2AA;        { application heap zone [pointer]}
  137. HeapEnd = $114;         { end of heap [pointer]}
  138. HiHeapMark = $BAE;        { (long) highest address used by a zone below sp<01Nov85 JTC>}
  139. MemErr = $220;            { last memory manager error [word]}
  140. UTableBase = $11C;        { unit I/O table [pointer]}
  141. UnitNtryCnt = $1D2;     { count of entries in unit table [word]}
  142. JFetch = $8F4;            { fetch a byte routine for drivers [pointer]}
  143. JStash = $8F8;            { stash a byte routine for drivers [pointer]}
  144. JIODone = $8FC;         { IODone entry location [pointer]}
  145. DrvQHdr = $308;         { queue header of drives in system [10 bytes]}
  146. BootDrive = $210;        { drive number of boot drive [word]}
  147. EjectNotify = $338;     { eject notify procedure [pointer]}
  148. IAZNotify = $33C;        { world swaps notify procedure [pointer]}
  149. SFSaveDisk = $214;        { last vRefNum seen by standard file [word]}
  150. CurDirStore = $398;     { save dir across calls to Standard File [long]}
  151. OneOne = $A02;            { constant $00010001 [long]}
  152. MinusOne = $A06;        { constant $FFFFFFFF [long]}
  153. Lo3Bytes = $31A;        { constant $00FFFFFF [long]}
  154. ROMBase = $2AE;         { ROM base address [pointer]}
  155. RAMBase = $2B2;         { RAM base address [pointer]}
  156. SysVersion = $15A;        { version # of RAM-based system [word]}
  157. RndSeed = $156;         { random seed/number [long]}
  158. Scratch20 = $1E4;        { scratch [20 bytes]}
  159. Scratch8 = $9FA;        { scratch [8 bytes]}
  160. ScrapSize = $960;        { scrap length [long]}
  161. ScrapHandle = $964;     { memory scrap [handle]}
  162. ScrapCount = $968;        { validation byte [word]}
  163. ScrapState = $96A;        { scrap state [word]}
  164. ScrapName = $96C;        { pointer to scrap name [pointer]}
  165. IntlSpec = $BA0;        { (long) - ptr to extra Intl data }
  166. SwitcherTPtr = $286;    { Switcher's switch table }
  167. CPUFlag = $12F;         { $00=68000, $01=68010, $02=68020 (old ROM inits to $00)}
  168. VIA = $1D4;             { VIA base address [pointer]}
  169. IWM = $1E0;             { IWM base address [pointer]}
  170. Lvl1DT = $192;            { Interrupt level 1 dispatch table [32 bytes]}
  171. Lvl2DT = $1B2;            { Interrupt level 2 dispatch table [32 bytes]}
  172. ExtStsDT = $2BE;        { SCC ext/sts secondary dispatch table [16 bytes]}
  173. SPValid = $1F8;         { validation field ($A7) [byte]}
  174. SPATalkA = $1F9;        { AppleTalk node number hint for port A}
  175. SPATalkB = $1FA;        { AppleTalk node number hint for port B}
  176. SPAlarm = $200;         { alarm time [long]}
  177. SPFont = $204;            { default application font number minus 1 [word]}
  178. SPKbd = $206;            { kbd repeat thresh in 4/60ths [2 4-bit]}
  179. SPPrint = $207;         { print stuff [byte]}
  180. SPVolCtl = $208;        { volume control [byte]}
  181. SPClikCaret = $209;     { double click/caret time in 4/60ths[2 4-bit]}
  182. SPMisc1 = $20A;         { miscellaneous [1 byte]}
  183. SPMisc2 = $20B;         { miscellaneous [1 byte]}
  184. GetParam = $1E4;        { system parameter scratch [20 bytes]}
  185. SysParam = $1F8;        { system parameter memory [20 bytes]}
  186. CrsrThresh = $8EC;        { delta threshold for mouse scaling [word]}
  187. JCrsrTask = $8EE;        { address of CrsrVBLTask [long]}
  188. MTemp = $828;            { Low-level interrupt mouse location [long]}
  189. RawMouse = $82C;        { un-jerked mouse coordinates [long]}
  190. CrsrRect = $83C;        { Cursor hit rectangle [8 bytes]}
  191. TheCrsr = $844;         { Cursor data, mask & hotspot [68 bytes]}
  192. CrsrAddr = $888;        { Address of data under cursor [long]}
  193. CrsrSave = $88C;        { data under the cursor [64 bytes]}
  194. CrsrVis = $8CC;         { Cursor visible? [byte]}
  195. CrsrBusy = $8CD;        { Cursor locked out? [byte]}
  196. CrsrNew = $8CE;         { Cursor changed? [byte]}
  197. CrsrState = $8D0;        { Cursor nesting level [word]}
  198. CrsrObscure = $8D2;     { Cursor obscure semaphore [byte]}
  199. KbdVars = $216;         { Keyboard manager variables [4 bytes]}
  200. KbdType = $21E;         { keyboard model number [byte]}
  201. MBState = $172;         { current mouse button state [byte]}
  202. KeyMapLM = $174;        {KeyMap has name conflict w/ type. Bitmap of the keyboard [4 longs]}
  203. KeypadMap = $17C;        { bitmap for numeric pad-18bits [long]}
  204. Key1Trans = $29E;        { keyboard translator procedure [pointer]}
  205. Key2Trans = $2A2;        { numeric keypad translator procedure [pointer]}
  206. JGNEFilter = $29A;        { GetNextEvent filter proc [pointer]}
  207. KeyMVars = $B04;        { (word) for ROM KEYM proc state}
  208. Mouse = $830;            { processed mouse coordinate [long]}
  209. CrsrPin = $834;         { cursor pinning rectangle [8 bytes]}
  210. CrsrCouple = $8CF;        { cursor coupled to mouse? [byte]}
  211. CrsrScale = $8D3;        { cursor scaled? [byte]}
  212. MouseMask = $8D6;        { V-H mask for ANDing with mouse [long]}
  213. MouseOffset = $8DA;     { V-H offset for adding after ANDing [long]}
  214. AlarmState = $21F;        { Bit7=parity, Bit6=beeped, Bit0=enable [byte]}
  215. VBLQueue = $160;        { VBL queue header [10 bytes]}
  216. SysEvtMask = $144;        { system event mask [word]}
  217. SysEvtBuf = $146;        { system event queue element buffer [pointer]}
  218. EventQueue = $14A;        { event queue header [10 bytes]}
  219. EvtBufCnt = $154;        { max number of events in SysEvtBuf - 1 [word]}
  220. GZRootHnd = $328;        { root handle for GrowZone [handle]}
  221. GZRootPtr = $32C;        { root pointer for GrowZone [pointer]}
  222. GZMoveHnd = $330;        { moving handle for GrowZone [handle]}
  223. MemTop = $108;            { top of memory [pointer]}
  224. MmInOK = $12E;            { initial memory mgr checks ok? [byte]}
  225. HpChk = $316;            { heap check RAM code [pointer]}
  226. MaskBC = $31A;            { Memory Manager Byte Count Mask [long]}
  227. MaskHandle = $31A;        { Memory Manager Handle Mask [long]}
  228. MaskPtr = $31A;         { Memory Manager Pointer Mask [long]}
  229. MinStack = $31E;        { min stack size used in InitApplZone [long]}
  230. DefltStack = $322;        { default size of stack [long]}
  231. MMDefFlags = $326;        { default zone flags [word]}
  232. DSAlertTab = $2BA;        { system error alerts [pointer]}
  233. DSAlertRect = $3F8;     { rectangle for disk-switch alert [8 bytes]}
  234. DSDrawProc = $334;        { alternate syserror draw procedure [pointer]}
  235. DSWndUpdate = $15D;     { GNE not to paintBehind DS AlertRect? [byte]}
  236. WWExist = $8F2;         { window manager initialized? [byte]}
  237. QDExist = $8F3;         { quickdraw is initialized [byte]}
  238. ResumeProc = $A8C;        { Resume procedure from InitDialogs [pointer]}
  239. DSErrCode = $AF0;        { last system error alert ID}
  240. IntFlag = $15F;         { reduce interrupt disable time when bit 7 = 0}
  241. SerialVars = $2D0;        { async driver variables [16 bytes]}
  242. ABusVars = $2D8;        {;Pointer to AppleTalk local variables}
  243. ABusDCE = $2DC;         {;Pointer to AppleTalk DCE}
  244. PortAUse = $290;        { bit 7: 1 = not in use, 0 = in use}
  245. PortBUse = $291;        { port B use, same format as PortAUse}
  246. SCCASts = $2CE;         { SCC read reg 0 last ext/sts rupt - A [byte]}
  247. SCCBSts = $2CF;         { SCC read reg 0 last ext/sts rupt - B [byte]}
  248. DskErr = $142;            { disk routine result code [word]}
  249. PWMBuf2 = $312;         { PWM buffer 1 (or 2 if sound) [pointer]}
  250. SoundPtr = $262;        { 4VE sound definition table [pointer]}
  251. SoundBase = $266;        { sound bitMap [pointer]}
  252. SoundVBL = $26A;        { vertical retrace control element [16 bytes]}
  253. SoundDCE = $27A;        { sound driver DCE [pointer]}
  254. SoundActive = $27E;     { sound is active? [byte]}
  255. SoundLevel = $27F;        { current level in buffer [byte]}
  256. CurPitch = $280;        { current pitch value [word]}
  257. DskVerify = $12C;        { used by 3.5 disk driver for read/verify [byte]}
  258. TagData = $2FA;         { sector tag info for disk drivers [14 bytes]}
  259. BufTgFNum = $2FC;        { file number [long]}
  260. BufTgFFlg = $300;        { flags [word]}
  261. BufTgFBkNum = $302;     { logical block number [word]}
  262. BufTgDate = $304;        { time stamp [word]}
  263. ScrDmpEnb = $2F8;        { screen dump enabled? [byte]}
  264. ScrDmpType = $2F9;        { FF dumps screen, FE dumps front window [byte]}
  265. ScrapVars = $960;        { scrap manager variables [32 bytes]}
  266. ScrapInfo = $960;        { scrap length [long]}
  267. ScrapEnd = $980;        { end of scrap vars}
  268. ScrapTag = $970;        { scrap file name [STRING[15]]}
  269. LaunchFlag = $902;        { from launch or chain [byte]}
  270. SaveSegHandle = $930;    { seg 0 handle [handle]}
  271. CurJTOffset = $934;     { current jump table offset [word]}
  272. CurPageOption = $936;    { current page 2 configuration [word]}
  273. LoaderPBlock = $93A;    { param block for ExitToShell [10 bytes]}
  274. CurApRefNum = $900;     { refNum of application's resFile [word]}
  275. CurrentA5 = $904;        { current value of A5 [pointer]}
  276. CurStackBase = $908;    { current stack base [pointer]}
  277. CurApName = $910;        { name of application [STRING[31]]}
  278. LoadTrap = $12D;        { trap before launch? [byte]}
  279. SegHiEnable = $BB2;     { (byte) 0 to disable MoveHHi in LoadSeg}
  280.  
  281. { Window Manager Globals }
  282.  
  283. WindowList = $9D6;        {Z-ordered linked list of windows [pointer]}
  284. PaintWhite = $9DC;        {erase newly drawn windows? [word]}
  285. WMgrPort = $9DE;        {window manager's grafport [pointer]}
  286. GrayRgn = $9EE;         {rounded gray desk region [handle]}
  287. CurActivate = $A64;     {window slated for activate event [pointer]}
  288. CurDeactive = $A68;     {window slated for deactivate event [pointer]}
  289. DragHook = $9F6;        {user hook during dragging [pointer]}
  290. DeskPattern = $A3C;     {desk pattern [8 bytes]}
  291. DeskHook = $A6C;        {hook for painting the desk [pointer]}
  292. GhostWindow = $A84;     {window hidden from FrontWindow [pointer]}
  293.  
  294. { Text Edit Globals }
  295.  
  296. TEDoText = $A70;        {textEdit doText proc hook [pointer]}
  297. TERecal = $A74;         {textEdit recalText proc hook [pointer]}
  298. TEScrpLength = $AB0;    {textEdit Scrap Length [word]}
  299. TEScrpHandle = $AB4;    {textEdit Scrap [handle]}
  300. TEWdBreak = $AF6;        {default word break routine [pointer]}
  301. WordRedraw = $BA5;        {(byte) - used by TextEdit RecalDraw}
  302. TESysJust = $BAC;        {(word) system justification (intl. textEdit)}
  303.  
  304. { Resource Manager Globals }
  305.  
  306. TopMapHndl = $A50;        {topmost map in list [handle]}
  307. SysMapHndl = $A54;        {system map [handle]}
  308. SysMap = $A58;            {reference number of system map [word]}
  309. CurMap = $A5A;            {reference number of current map [word]}
  310. ResReadOnly = $A5C;     {Read only flag [word]}
  311. ResLoad = $A5E;         {Auto-load feature [word]}
  312. ResErr = $A60;            {Resource error code [word]}
  313. ResErrProc = $AF2;        {Resource error procedure [pointer]}
  314. SysResName = $AD8;        {Name of system resource file [STRING[19]]}
  315. RomMapInsert = $B9E;    {(byte) determines if we should link in map}
  316. TmpResLoad = $B9F;        {second byte is temporary ResLoad value.}
  317.  
  318. { Menu Mgr globals }
  319.  
  320. MBarHeight = $BAA;        {height of the menu bar}
  321.  
  322.  
  323. {$ENDC}    { UsingSysEqu }
  324.  
  325. {$IFC NOT UsingIncludes}
  326.     END.
  327. {$ENDC}
  328.  
  329.